/* ==========================================================================
   $CONTENTS
   ========================================================================== */
/**
 * VARIABLES..................
 * MIXINS.....................
 * IMPORTS....................
 * BASE.......................Base stylings
 * TYPOGRAPHY.................
 * CODE-BLOCKS................
 * FORM-ELEMENTS..............
 * BUTTONS....................
 * LISTS......................
 * MENUS......................
 * GROUPS.....................Group sets of content
 * TABLES.....................
 * SECTIONS...................Blocks of content
 * TARGETS....................Page focus targets
 * RAINBOW....................Syntax highlighting
 * TEXT-HELPERS...............
 * DEMOS......................
 */
/* ==========================================================================
   $IMPORTS
   ========================================================================== */
/* ==========================================================================
   $VARIABLES
   ========================================================================== */
/**
 * Font families
 */
/**
 * Colors
 */
/* #cbe7b6 */
/* #d9d9d9 */
/* #ededed */
/* #bfbfbf */
/* #ababab */
/* #eeeec5 */
/**
 * Widths
 */
/* 300px */
/* 540px */
/* 740px */
/**
 * Transitions
 */
/* ==========================================================================
   $MIXINS
   ========================================================================== */
/**
 * Lists
 */
.list-item-inline {
  display: inline-block;
  margin-right: 1em;
}
/**
 * Demo tags
 */
/**
 * Clear fix
 */
.clearfix:before,
.clearfix:after {
  content: " ";
  display: table;
}
.clearfix:after {
  clear: both;
}
/**
 * Vendor prefixes
 */
/*! normalize.css v2.1.1 | MIT License | git.io/normalize */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 8/9.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}
/**
 * Correct `inline-block` display not defined in IE 8/9.
 */
audio,
canvas,
video {
  display: inline-block;
}
/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}
/**
 * Address styling not present in IE 8/9.
 */
[hidden] {
  display: none;
}
/* ==========================================================================
   Base
   ========================================================================== */
/**
 * 1. Prevent system color scheme's background color being used in Firefox, IE,
 *    and Opera.
 * 2. Prevent system color scheme's text color being used in Firefox, IE, and
 *    Opera.
 * 3. Set default font family to sans-serif.
 * 4. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  background: #fff;
  /* 1 */
  color: #000;
  /* 2 */
  font-family: sans-serif;
  /* 3 */
  -ms-text-size-adjust: 100%;
  /* 4 */
  -webkit-text-size-adjust: 100%;
  /* 4 */
}
/**
 * Remove default margin.
 */
body {
  margin: 0;
}
/* ==========================================================================
   Links
   ========================================================================== */
/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
  outline: thin dotted;
}
/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0;
}
/* ==========================================================================
   Typography
   ========================================================================== */
/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
/**
 * Address styling not present in IE 8/9, Safari 5, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}
/**
 * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */
b,
strong {
  font-weight: bold;
}
/**
 * Address styling not present in Safari 5 and Chrome.
 */
dfn {
  font-style: italic;
}
/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}
/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000;
}
/**
 * Correct font family set oddly in Safari 5 and Chrome.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  font-size: 1em;
}
/**
 * Improve readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre-wrap;
}
/**
 * Set consistent quote types.
 */
q {
  quotes: "\201C" "\201D" "\2018" "\2019";
}
/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}
/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sup {
  top: -0.5em;
}
sub {
  bottom: -0.25em;
}
/* ==========================================================================
   Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9.
 */
img {
  border: 0;
}
/**
 * Correct overflow displayed oddly in IE 9.
 */
svg:not(:root) {
  overflow: hidden;
}
/* ==========================================================================
   Figures
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari 5.
 */
figure {
  margin: 0;
}
/* ==========================================================================
   Forms
   ========================================================================== */
/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}
/**
 * 1. Correct `color` not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}
/**
 * 1. Correct font family not being inherited in all browsers.
 * 2. Correct font size not being inherited in all browsers.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */
button,
input,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 2 */
  margin: 0;
  /* 3 */
}
/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,
input {
  line-height: normal;
}
/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,
select {
  text-transform: none;
}
/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}
/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}
/**
 * 1. Address box sizing set to `content-box` in IE 8/9.
 * 2. Remove excess padding in IE 8/9.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}
/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box;
}
/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
/**
 * 1. Remove default vertical scrollbar in IE 8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */
}
/* ==========================================================================
   Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}
/* ==========================================================================
   $BASE
   ========================================================================== */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}
/**
 * Links
 */
a {
  text-decoration: underline;
  cursor: pointer;
  color: #0089ec;
  -webkit-transition: all linear 0.15s;
  -moz-transition: all linear 0.15s;
  transition: all linear 0.15s;
}
a:focus {
  outline: 2px dotted;
}
p > a,
.heading__text > a {
  text-decoration: none;
}
p > a:hover,
p > a:focus,
.heading__text > a:hover,
.heading__text > a:focus {
  text-decoration: underline;
}
/* ==========================================================================
   $TYPOGRAPHY
   ========================================================================== */
body {
  font-family: "Helvetica Neue", sans-serif;
  font-weight: 200;
  font-size: 16px;
  line-height: 1.6;
}
@media (min-width: 46.25em) {
  body {
    font-size: 20px;
  }
}
@media (min-width: 46.25em) {
  .body--fixed-head {
    padding-top: 73px;
  }
}
h1,
h2,
h3,
h4,
h5,
h6,
.heading {
  line-height: 1.4;
  font-weight: 400;
}
h1,
h2,
.heading--one,
.heading--two {
  letter-spacing: -1px;
}
h1,
.heading--one {
  font-size: 2em;
}
@media (min-width: 18.75em) {
  h1,
  .heading--one {
    font-size: 2.125em;
  }
}
@media (min-width: 33.75em) {
  h1,
  .heading--one {
    font-size: 2.4em;
  }
}
h2,
.heading--two {
  font-size: 1.5em;
}
@media (min-width: 33.75em) {
  h2,
  .heading--two {
    font-size: 1.8em;
  }
}
h3,
.heading--three {
  font-size: 1.2em;
}
.heading--thin {
  font-weight: 200;
}
.heading--splash {
  width: 88%;
  margin-left: auto;
  margin-right: auto;
  margin-top: .5em;
}
@media (min-width: 46.25em) {
  .heading--splash {
    margin-top: 1em;
  }
}
/**
 * Divider headings
 */
.heading--divide,
.heading--divide-center,
.heading--divide-first {
  text-transform: lowercase;
  margin-top: 2.5em;
  border-top: 1px solid #d9d9d9;
  padding-top: 1.5em;
}
@media (min-width: 33.75em) {
  .heading--divide,
  .heading--divide-center,
  .heading--divide-first {
    position: relative;
    padding-top: 0;
    border-top: 0;
  }
}
.heading--divide code,
.heading--divide-center code,
.heading--divide-first code {
  text-transform: initial;
}
.heading--divide-center {
  text-align: center;
}
.heading--divide-first {
  padding-top: 0;
  border-top: 0;
  margin-top: 1em;
}
@media (min-width: 33.75em) {
  .heading--divide:after,
  .heading--divide-center:after,
  .heading--divide-first:after {
    content: " ";
    border-bottom: 1px solid #d9d9d9;
    height: 0;
    position: absolute;
    bottom: .5em;
    z-index: -1;
    right: 0;
    left: 0;
    display: block;
  }
}
@media (min-width: 33.75em) {
  .heading--divide .heading__text,
  .heading--divide-center .heading__text,
  .heading--divide-first .heading__text {
    background: #ffffff;
    display: inline-block;
    padding-right: .5em;
  }
}
@media (min-width: 33.75em) {
  .heading--divide-center .heading__text {
    padding-left: .5em;
  }
}
/**
 * Anchor for a heading
 */
.heading__anchor,
.heading__anchor--bigger {
  color: #bfbfbf;
  font-weight: 100;
  text-decoration: none;
  margin-left: .5em;
  font-style: italic;
  font-size: .75em;
  vertical-align: 3px;
}
.heading__anchor--bigger {
  font-size: 1em;
  vertical-align: 1px;
}
.heading__text .heading__anchor:hover,
.heading__text .heading__anchor:focus,
.heading__text .heading__anchor--bigger:hover,
.heading__text .heading__anchor--bigger:focus {
  color: #0089ec;
  text-decoration: none;
}
/* ==========================================================================
   $CODE-BLOCKS
   ========================================================================== */
pre,
code {
  font-family: Monaco, Consolas, "Liberation Mono", monospace;
  border: 1px solid #e9ebeb;
  background: #f5f8f8;
  color: #333333;
  font-size: .9em;
  padding: 0 .125em;
  word-break: break-word;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
}
pre {
  white-space: pre;
  padding: 1em;
  text-align: left;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  padding-top: 30px;
  position: relative;
}
pre:before {
  content: "Code";
  position: absolute;
  top: 0;
  left: 0;
  font-family: Monaco, Consolas, "Liberation Mono", monospace;
  font-weight: 500;
  font-size: 10px;
  line-height: 1;
  background: #ffffff;
  padding: 5px 6px 4px 6px;
  color: #989a99;
  border-right: 1px solid #ededed;
  border-bottom: 1px solid #ededed;
  -webkit-border-radius: 0 0 4px 0;
  -moz-border-radius: 0 0 4px 0;
  border-radius: 0 0 4px 0;
}
pre > code {
  display: table;
  line-height: 1.5;
  border: 0;
  background: none;
  padding: 0 4.2em 0 0;
}
pre > code[data-language]:before {
  content: attr(data-language);
  position: absolute;
  top: 2px;
  left: 42px;
  font-size: 10px;
  opacity: .5;
  -webkit-transition: all 0.1s;
  -moz-transition: all 0.1s;
  transition: all 0.1s;
}
pre:hover > code[data-language]:before {
  opacity: 1;
}
a code {
  text-decoration: underline;
}
/* ==========================================================================
   $FORM-ELEMENTS
   ========================================================================== */
fieldset {
  position: relative;
  border: 0;
  margin: 1em 0 1.5em;
  padding: 0;
}
label:hover,
label:focus {
  color: #0089ec;
}
/**
 * Inputs and textareas
 */
input[type=text],
input[type=password],
input[type=email],
input[type=date],
input[type=number],
input[type=search],
textarea {
  border: 3px solid #cccccc;
  padding: .6em 1em;
  font-weight: 200;
  width: 100%;
  -webkit-appearance: none;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
textarea {
  min-height: 2em;
}
input[type=text]:focus,
input[type=password]:focus,
input[type=email]:focus,
input[type=date]:focus,
input[type=number]:focus,
input[type=search]:focus,
textarea:focus {
  outline: none;
  border-color: #0089ec;
}
/**
 * Radios and checkboxes
 */
input[type=checkbox],
input[type=radio] {
  margin-right: 5px;
  vertical-align: 1px;
}
/**
 * Select drop-downs and search
 */
select {
  border: 1px solid #999999;
  background: #ffffff;
  padding: 3px 5px;
  height: 29px;
  white-space: nowrap;
}
input[type=search] {
  padding-left: 0;
  padding-right: 0;
  -webkit-border-radius: 14px;
  -moz-border-radius: 14px;
  border-radius: 14px;
}
/**
 * Groups of fields
 */
.pre--demo {
  margin-bottom: 0;
  -webkit-border-radius: 4px 4px 0 0;
  -moz-border-radius: 4px 4px 0 0;
  border-radius: 4px 4px 0 0;
}
.fieldset--demo {
  margin-top: 0;
  padding: 1em;
  background: #f8faf9;
  border: 1px solid #ededed;
  border-top: 0;
  -webkit-border-radius: 0 0 4px 4px;
  -moz-border-radius: 0 0 4px 4px;
  border-radius: 0 0 4px 4px;
  padding-top: 30px;
  position: relative;
}
.fieldset--demo:before {
  content: "Demo";
  position: absolute;
  top: 0;
  left: 0;
  font-family: Monaco, Consolas, "Liberation Mono", monospace;
  font-weight: 500;
  font-size: 10px;
  line-height: 1;
  background: #ffffff;
  padding: 5px 6px 4px 6px;
  color: #989a99;
  border-right: 1px solid #ededed;
  border-bottom: 1px solid #ededed;
  -webkit-border-radius: 0 0 4px 0;
  -moz-border-radius: 0 0 4px 0;
  border-radius: 0 0 4px 0;
}
.fieldset__wrapper {
  position: relative;
}
.fieldset--demo .fieldset__button {
  margin-bottom: 1em;
  margin-right: 1em;
}
.fieldset--splash .fieldset__input {
  font-size: 1.2em;
  text-align: center;
}
.fieldset--splash .fieldset__input {
  margin: 0 auto;
  width: 80%;
}
@media (min-width: 33.75em) {
  .fieldset--splash .fieldset__input {
    width: 70%;
  }
}
/* ==========================================================================
   $BUTTONS
   ========================================================================== */
.button {
  display: inline-block;
  border: 2px solid #0089ec;
  background: #0089ec;
  color: #ffffff;
  text-decoration: none;
  padding: .67em 1.25em;
}
.button:hover,
.button:focus {
  text-decoration: none;
  background: #55cc22;
  border-color: #55cc22;
}
.button--small {
  padding: 0.5em 1em;
  font-size: .8em;
}
/* ==========================================================================
   $LISTS
   ========================================================================== */
.list--checked > li:before {
  content: "✔";
  position: absolute;
  right: 100%;
  font-size: 80%;
  top: .3333333333em;
  margin-right: 8px;
  color: #55cc22;
}
.list--checked > li {
  list-style: none;
  position: relative;
}
/* ==========================================================================
   $MENUS
   ========================================================================== */
.menu__list {
  margin: 0;
  list-style: none;
  padding: 0;
}
.menu__list--header:before,
.menu__list--header:after {
  content: " ";
  display: table;
}
.menu__list--header:after {
  clear: both;
}
/**
 * Menu links
 */
.menu__link {
  text-decoration: none;
}
/* Dimmed links */
.menu__link--dimmed {
  color: #ababab;
}
/* Active or dimmed and hovered/focused links */
.menu__link--active,
.menu__link--dimmed:hover,
.menu__link--dimmed:focus {
  color: #000000;
}
/* Touch friendly links */
.menu__item--touch .menu__link {
  margin-right: -20px;
  padding-right: 20px;
  margin-left: -20px;
  padding-left: 20px;
}
/**
 * Menu items
 */
.menu__item--logo {
  float: left;
  margin-right: 1em;
}
.menu__item--logo .menu__link {
  display: block;
  padding-bottom: 0.5em;
}
.menu__item--toggle {
  float: right;
}
@media (min-width: 46.25em) {
  .menu__item--toggle {
    display: none;
  }
}
.menu__item--toggle .menu__link {
  display: block;
  padding-top: 1em;
  padding-bottom: 1em;
}
.menu__item--clear:before,
.menu__item--clear:after {
  content: " ";
  display: table;
}
.menu__item--clear:after {
  clear: both;
}
@media (min-width: 46.25em) {
  .menu__item--clear {
    display: none;
  }
}
@media (min-width: 46.25em) {
  .menu__item--responsive {
    float: left;
    margin-right: 1em;
  }
  .menu__item--responsive:last-child {
    margin-right: 0;
  }
}
/* Trailing items sit separately */
@media (min-width: 46.25em) {
  .menu__item--trail {
    float: right;
  }
}
/**
 * Header menu
 */
.menu--header {
  font-size: 1.25em;
  font-weight: 500;
}
@media (min-width: 46.25em) {
  .menu--header {
    font-size: .8em;
  }
}
/* Add a border to the block links */
.menu__item--responsive .menu__link {
  border-top: 1px solid #ededed;
  text-align: center;
  display: block;
  min-height: 3em;
  line-height: 3;
}
@media (min-width: 46.25em) {
  .menu__item--responsive .menu__link {
    border-top: 0;
    padding-top: 1em;
  }
}
/* Add some spacing after the last block item */
.menu__item:last-child .menu__link {
  margin-bottom: 2em;
}
@media (min-width: 46.25em) {
  .menu__item:last-child .menu__link {
    margin-bottom: 0;
  }
}
/**
 * Theme switcher
 */
.theme-toggle__label {
  cursor: pointer;
  padding: 2px 5px 3px;
  background: #ffffff;
  border: 1px solid #d9d9d9;
  border-bottom-color: #bfbfbf;
  margin-right: -1px;
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.theme-toggle__label--first {
  -webkit-border-radius: 4px 0 0 4px;
  -moz-border-radius: 4px 0 0 4px;
  border-radius: 4px 0 0 4px;
}
.theme-toggle__label--last {
  -webkit-border-radius: 0 4px 4px 0;
  -moz-border-radius: 0 4px 4px 0;
  border-radius: 0 4px 4px 0;
  margin-right: 0;
}
.theme-toggle__input:checked + .theme-toggle__label {
  position: relative;
  z-index: 1;
  background: #0089ec;
  border-color: #0089ec;
  color: #ffffff;
}
/* ==========================================================================
   $GROUPS
   ========================================================================== */
.groupset {
  margin: 1em 0;
}
.groupset--flat {
  margin: 0;
}
.groupset__item {
  display: inline-block;
  vertical-align: top;
}
.groupset__item--spaced {
  margin-right: 1em;
  margin-bottom: 1em;
}
.groupset__item--spaced:last-child {
  margin-right: 0;
}
/* ==========================================================================
   $TABLES
   ========================================================================== */
.table {
  width: 100%;
  margin: 1em 0;
  text-align: left;
  font-size: .8em;
  line-height: 1.4;
  border-collapse: separate;
}
.table th {
  background: #f5f7f7;
  font-weight: 500;
  min-width: 40px;
}
.table th,
.table td {
  border-color: #e8ebeb;
  border-style: solid;
  border-width: 1px 0 0 1px;
  padding: .5em 1em;
  vertical-align: top;
}
.table th:last-child,
.table td:last-child {
  border-right-width: 1px;
}
.table thead:last-child tr:last-child th,
.table tbody:last-child tr:last-child td {
  border-bottom-width: 1px;
}
.table thead:first-child tr:first-child th:first-child {
  -webkit-border-radius: 4px 0 0 0;
  -moz-border-radius: 4px 0 0 0;
  border-radius: 4px 0 0 0;
}
.table thead:first-child tr:first-child th:last-child {
  -webkit-border-radius: 0 4px 0 0;
  -moz-border-radius: 0 4px 0 0;
  border-radius: 0 4px 0 0;
}
.table tbody:last-child tr:last-child td:first-child {
  -webkit-border-radius: 0 0 0 4px;
  -moz-border-radius: 0 0 0 4px;
  border-radius: 0 0 0 4px;
}
.table tbody:last-child tr:last-child td:last-child {
  -webkit-border-radius: 0 0 4px 0;
  -moz-border-radius: 0 0 4px 0;
  border-radius: 0 0 4px 0;
}
/* ========================================================================
   $SECTIONS
   ======================================================================== */
/**
 * Sections of content
 */
.section {
  padding: 0 20px;
}
.section--header {
  background: url(../images/bg.png) #fafbfb 50% 0;
  border-bottom: 2px solid #e9ebeb;
}
@media (min-width: 46.25em) {
  .body--fixed-head .section--header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10000;
  }
}
.section--footer {
  margin-bottom: 8em;
}
/**
 * Section block holder
 */
/* Block scoped with a max-width */
.section__block--scoped {
  max-width: 760px;
  margin: 0 auto;
}
/* Notification blocks */
.section__block--notification,
.section__block--notification-green {
  background: #ffffdd;
  border: 1px solid #eeeec5;
  padding: 5px 30px;
  margin-top: 1em;
  margin-bottom: 1em;
  color: #444422;
}
.section__block--notification-green {
  background: #ecffdd;
  border-color: #cbe7b6;
  color: #334422;
}
/* ==========================================================================
   $TARGETS
   ========================================================================== */
@media (max-width: 46.25em) {
  .page-target__toggle {
    display: inline-block;
    vertical-align: top;
    width: 28px;
    height: 4px;
    border-bottom: 12px double;
    border-top: 12px double;
  }
}
@media (max-width: 46.25em) {
  .page-target:target .page-target__toggle {
    width: 4px;
    height: 28px;
    border-bottom: 0;
    border-top: 0;
    border-right: 12px double;
    border-left: 12px double;
  }
}
@media (max-width: 46.25em) {
  .page-target__display--flip,
  .page-target:target .page-target__display {
    display: none !important;
  }
}
@media (max-width: 46.25em) {
  .page-target:target .page-target__display--flip {
    display: inherit !important;
  }
}
@media (max-width: 46.25em) {
  .page-target__reveal {
    max-height: 0;
    overflow: hidden;
    -webkit-transition: all linear 0.15s;
    -moz-transition: all linear 0.15s;
    transition: all linear 0.15s;
  }
}
@media (min-width: 46.25em) {
  .page-target .page-target__reveal {
    max-height: 7em;
  }
}
@media (max-width: 46.25em) {
  .page-target:target .page-target__reveal {
    max-height: 7em;
  }
}
/* ==========================================================================
   $RAINBOW
   ========================================================================== */
.string {
  color: #68c244;
}
.selector,
.function,
.method {
  color: #0069bc;
}
.comment,
.comment a {
  color: #0089ec;
  font-style: italic;
}
.comment a {
  padding: 2px 0;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
}
.comment a:hover {
  background: #0089ec;
  color: #ffffff;
}
.constant,
.null {
  color: #d40;
}
.tag-name,
.attribute {
  color: #c50;
}
.keyword {
  color: #b90690;
}
.rainbow,
.operator {
  color: #585856;
}
.class,
.pseudo {
  color: #68c244;
}
.css-property {
  color: #0089ec;
}
.css-value {
  color: #0069bc;
}
/* ==========================================================================
   $TEXT-HELPERS
   ========================================================================== */
.text-dimmed,
.text-dimmed a,
a.text-dimmed {
  color: #bfbfbf;
}
.text-dimmed a,
a.text-dimmed {
  text-decoration: underline;
}
.text-dimmed a:hover,
a.text-dimmed:hover {
  color: #999999;
}
.text-center {
  text-align: center;
}
.text-warning {
  color: #ee2200;
}
.text-tiny {
  font-size: 75%;
}
/**
 * Special fonts
 */
@font-face {
  font-family: Peace;
  src: url(data:application/x-font-woff;charset=utf-8;base64,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) format('woff'), url(data:application/x-font-ttf;charset=utf-8;base64,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) format('truetype');
  font-weight: normal;
  font-style: normal;
}
.peace {
  font-family: Peace, "Zapf Dingbats", dingbats;
  speak: none;
  line-height: .8;
  vertical-align: -6px;
  font-size: 1.4em;
}
.ampersand {
  font-family: Baskerville, "Goudy Old Style", Palatino, "Book Antiqua", serif;
  font-style: italic;
}
/**
 * Logo stuff
 */
.logocon {
  font-size: 60px;
  display: inline-block;
  line-height: 1;
  height: .95em;
  position: relative;
  overflow: hidden;
}
.logocon__p,
.menu__link--dimmed:hover .logocon__p,
.menu__link--dimmed:focus .logocon__p {
  font-family: Peace;
  color: #000000;
  display: inline;
}
.logocon__u,
.menu__link--dimmed:hover .logocon__u,
.menu__link--dimmed:focus .logocon__u {
  position: absolute;
  bottom: 0;
  right: .05em;
  background: #0089ec;
  height: .09em;
  left: .25em;
}
.menu__link--dimmed .logocon__p,
.menu__link--dimmed .logocon__u {
  -webkit-transition: all linear 0.15s;
  -moz-transition: all linear 0.15s;
  transition: all linear 0.15s;
}
.menu__link--dimmed .logocon__p {
  color: #bfbfbf;
}
.menu__link--dimmed .logocon__u {
  background: #bfbfbf;
}
/* ==========================================================================
   $DEMOS
   ========================================================================== */
#date_demo__translations_rtl + .picker {
  direction: rtl;
}
#date_demo__translations_rtl + .picker .picker__nav--next {
  right: auto;
  left: -1em;
}
#date_demo__translations_rtl + .picker .picker__nav--prev {
  left: auto;
  right: -1em;
}
#date_demo__translations_rtl + .picker .picker__nav--next:before {
  border-left: 0;
  border-right: .75em solid #000;
}
#date_demo__translations_rtl + .picker .picker__nav--prev:before {
  border-right: 0;
  border-left: .75em solid #000;
}
